package com.kepennar.application.client.requests;

import java.util.List;

import com.google.web.bindery.requestfactory.shared.Request;
import com.google.web.bindery.requestfactory.shared.RequestContext;
import com.google.web.bindery.requestfactory.shared.Service;
import com.kepennar.application.domain.Event;

/**
 * Builds requests for the Employee service.
 */
@Service(Event.class)
public interface EventRequests extends RequestContext {

	/**
	 * Find all event
	 * 
	 * @return a request object
	 */
	Request<List<EventProxy>> findAllEvents();

	/**
	 * @return a request object
	 */
	Request<EventProxy> findEvent(Long id);

	/**
	 * @return a request object
	 */
	Request<List<EventProxy>> findEventEntries(int firstResult,
			int maxResults);

	/**
	 * Find all event
	 * 
	 * @return a request object
	 */
	Request<Long> countEvents();

}
